/* 
 * Copyright 2011 VelocitiSoftware
 * 
 * Licensed under the Apache License, Version 2.0 (the "License"); you may not
 * use this file except in compliance with the License. You may obtain a copy of
 * the License at
 * 
 * http://www.apache.org/licenses/LICENSE-2.0
 * 
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
 * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
 * License for the specific language governing permissions and limitations under
 * the License.
 */
package com.velociti.ikarus.ui.widget;

import com.vaadin.ui.CustomComponent;
import com.vaadin.ui.Layout.MarginInfo;
import com.velociti.ikarus.ui.widget.IkarusDockLayout.alignment;
import com.velociti.ikarus.ui.widget.IkarusDockLayout.labelposition;
import com.velociti.ikarus.ui.widget.IkarusDockLayout.loader;

/**
 * ######IkarusDock##### -Wrapper Class -Simplified and modified version of
 * http://www.wizzud.com/jqDock/ -Check http://www.wizzud.com/jqDock/ site for
 * the usage. -Needs JQuery js.
 * 
 * @author Alper Turkyilmaz - VelocitiSoftware - 2011
 * @version 1.0.2
 * 
 */
public class IkarusDock extends CustomComponent implements alignment, labelposition, loader {
	IkarusDockLayout layout;

	public IkarusDock(String caption) {
		setCaption(caption);
		layout = new IkarusDockLayout();
		setCompositionRoot(layout);
	}

	public boolean isUseLabel() {
		return layout.isUseLabel();
	}

	public void setUseLabel(boolean useLabel) {
		layout.setUseLabel(useLabel);
	}

	public int getActive() {
		return layout.getActive();
	}

	public void setActive(int active) {
		layout.setActive(active);
	}

	public String getAlign() {
		return layout.getAlign();
	}

	public void setAlign(String align) {
		layout.setAlign(align);
	}

	public int getBias() {
		return layout.getBias();
	}

	public void setBias(int bias) {
		layout.setBias(bias);
	}

	public double getCoefficient() {
		return layout.getCoefficient();
	}

	public void setCoefficient(double coefficient) {
		layout.setCoefficient(coefficient);
	}

	public int getDistance() {
		return layout.getDistance();
	}

	public void setDistance(int distance) {
		layout.setDistance(distance);
	}

	public int getDuration() {
		return layout.getDuration();
	}

	public void setDuration(int duration) {
		layout.setDuration(duration);
	}

	public int getFadeIn() {
		return layout.getFadeIn();
	}

	public void setFadeIn(int fadeIn) {
		layout.setFadeIn(fadeIn);
	}

	public String getFadeLayer() {
		return layout.getFadeLayer();
	}

	public void setFadeLayer(String fadeLayer) {
		layout.setFadeLayer(fadeLayer);
	}

	public boolean isFlow() {
		return layout.isFlow();
	}

	public void setFlow(boolean flow) {
		layout.setFlow(flow);
	}

	public int getIdle() {
		return layout.getIdle();
	}

	public void setIdle(int idle) {
		layout.setIdle(idle);
	}

	public int getInactivity() {
		return layout.getInactivity();
	}

	public void setInactivity(int inactivity) {
		layout.setInactivity(inactivity);
	}

	public String getLabelPosition() {
		return layout.getLabelPosition();
	}

	public void setLabelPosition(String labelPosition) {
		layout.setLabelPosition(labelPosition);
	}

	public boolean isNoBuffer() {
		return layout.isNoBuffer();
	}

	public void setNoBuffer(boolean noBuffer) {
		layout.setNoBuffer(noBuffer);
	}

	public int getSize() {
		return layout.getSize();
	}

	public void setSize(int size) {
		layout.setSize(size);
	}

	public int getStep() {
		return layout.getStep();
	}

	public void setStep(int step) {
		layout.setStep(step);
	}

	public String getLoader() {
		return layout.getLoader();
	}

	public void setLoader(String loader) {
		layout.setLoader(loader);
	}

	public void addDockItem(IkarusDockItem item) {
		layout.addComponent(item);
	}

	public void removeDockItem(IkarusDockItem item) {
		layout.removeComponent(item);
	}

	public void setStyle(String style) {
		layout.setStyle(style);
	}

	public void setStyleName(String style) {
		layout.setStyleName(style);
	}

	public void addStyleName(String style) {
		layout.addStyleName(style);
	}

}
